package jp.co.dailyReport.workItem;

import java.util.Calendar;

/**
 * 作業項目クラス
 */
public class WorkItem {

	//作業項目ID
	protected int workItemId=0;
	//表示番号
	protected int displayNm;
	//プロジェクトID
	protected int projectId;
	//プロジェクト名
	protected String name;
	//期日
	protected Calendar deadline;
	//作業項目追加社員ID
	protected int addStaffId;
	//単価
	protected int unitPrice;
	//削除フラグ
	protected boolean delFlg;
	//更新日
	protected Calendar upDay;

	/**
	 * 作業項目IDを設定します。
	 * 
	 * @param workItemId 作業項目ID
	 */
	public void setWorkItemId(int workItemId) {
		this.workItemId = workItemId;
	}

	/**
	 * 作業項目IDを取得します。
	 * 
	 * @return workItemId
	 */
	public int getWorkItemId() {
		return workItemId;
	}

	/**
	 * 表示番号を設定します。
	 * 
	 * @param displayNm 表示番号
	 */
	public void setDisplayNm(int displayNm) {
		this.displayNm = displayNm;
	}

	/**
	 * 表示番号を取得します。
	 * 
	 * @return displayNm
	 */
	public int getDisplayNm() {
		return displayNm;
	}

	/**
	 * プロジェクトIDを設定します。
	 * 
	 * @param projectId プロジェクトID
	 */
	public void setProjectId(int projectId) {
		this.projectId = projectId;
	}

	/**
	 * プロジェクトIDを取得します。
	 * 
	 * @return projectId
	 */
	public int getProjectId() {
		return projectId;
	}

	/**
	 * 作業項目名を設定します。
	 * 
	 * @param name 作業項目名
	 */
	public void setName(String name) {
		this.name = name;
	}

	/**
	 * 作業項目名を取得します。
	 * 
	 * @return name
	 */
	public String getName() {
		return name;
	}

	/**
	 * 期日を設定します。
	 * 
	 * @param deadline 期日
	 */
	public void setDeadline(Calendar deadline) {
		this.deadline = deadline;
	}

	/**
	 * 期日を取得します。
	 * 
	 * @return deadline
	 */
	public Calendar getDeadline() {
		return deadline;
	}

	/**
	 * 期日の年を取得します。
	 * 
	 * @return deadlineY
	 */
	public int getDeadlineY() {
		return deadline.get(Calendar.YEAR);
	}

	/**
	 * 期日の月を取得します。
	 * 
	 * @return deadlineM
	 */
	public int getDeadlineM() {
		return deadline.get(Calendar.MONTH) + 1;
	}

	/**
	 * 期日の日を取得します。
	 * 
	 * @return deadlineD
	 */
	public int getDeadlineD() {
		return deadline.get(Calendar.DATE);
	}

	/**
	 * 追加社員IDを設定します。
	 * 
	 * @param addStaffId 追加社員ID
	 */
	public void setAddStaffId(int addStaffId) {
		this.addStaffId = addStaffId;
	}

	/**
	 * 追加社員IDを取得します。
	 * 
	 * @return addStaffId
	 */
	public int getAddStaffId() {
		return addStaffId;
	}

	/**
	 * 単価を設定します。
	 * 
	 * @param unitPrice 単価
	 */
	public void setUnitPrice(int unitPrice) {
		this.unitPrice = unitPrice;
	}

	/**
	 * 単価を取得します。
	 * 
	 * @return unitPrice
	 */
	public int getUnitPrice() {
		return unitPrice;
	}

	/**
	 * 削除フラグを設定します。
	 * 
	 * @param delFlg 削除フラグ
	 */
	public void setDelFlg(boolean delFlg) {
		this.delFlg = delFlg;
	}

	/**
	 * 削除フラグを取得します。
	 * 
	 * @return delFlg
	 */
	public boolean isDelFlg() {
		return delFlg;
	}

	/**
	 * 更新日を設定します。
	 * 
	 * @param upDay 更新日
	 */
	public void setUpDay(Calendar upDay) {
		this.upDay = upDay;
	}

	/**
	 * 更新日を取得します。
	 * 
	 * @return upDay
	 */
	public Calendar getUpDay() {
		return upDay;
	}

}